home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / src / lib / c / netlib / RCS / Net_AddrToString.c,v < prev    next >
Text File  |  1992-06-09  |  6KB  |  300 lines

  1. head     1.6;
  2. branch   ;
  3. access   ;
  4. symbols  sprited:1.2.1;
  5. locks    ; strict;
  6. comment  @ * @;
  7.  
  8.  
  9. 1.6
  10. date     92.06.09.20.54.01;  author jhh;  state Exp;
  11. branches ;
  12. next     1.5;
  13.  
  14. 1.5
  15. date     92.03.27.14.38.58;  author voelker;  state Exp;
  16. branches ;
  17. next     1.4;
  18.  
  19. 1.4
  20. date     92.03.27.14.28.32;  author jhh;  state Exp;
  21. branches ;
  22. next     1.3;
  23.  
  24. 1.3
  25. date     92.03.02.17.45.35;  author voelker;  state Exp;
  26. branches ;
  27. next     1.2;
  28.  
  29. 1.2
  30. date     90.09.11.14.43.47;  author kupfer;  state Exp;
  31. branches 1.2.1.1;
  32. next     1.1;
  33.  
  34. 1.1
  35. date     90.09.05.16.49.29;  author kupfer;  state Exp;
  36. branches ;
  37. next     ;
  38.  
  39. 1.2.1.1
  40. date     91.10.22.14.18.04;  author kupfer;  state Exp;
  41. branches ;
  42. next     ;
  43.  
  44.  
  45. desc
  46. @Convert a Net_Address into a printable string.
  47. @
  48.  
  49.  
  50. 1.6
  51. log
  52. @got rid of backwards compatibility
  53. @
  54. text
  55. @/* 
  56.  * Net_AddrToString.c --
  57.  *
  58.  *    Converts a Net_Address into a printable string.
  59.  *
  60.  * Copyright 1990 Regents of the University of California
  61.  * Permission to use, copy, modify, and distribute this
  62.  * software and its documentation for any purpose and without
  63.  * fee is hereby granted, provided that the above copyright
  64.  * notice appear in all copies.  The University of California
  65.  * makes no representations about the suitability of this
  66.  * software for any purpose.  It is provided "as is" without
  67.  * express or implied warranty.
  68.  */
  69.  
  70. #ifndef lint
  71. static char rcsid[] = "$Header: /sprite/src/lib/net/RCS/Net_AddrToString.c,v 1.5 92/03/27 14:38:58 voelker Exp $ SPRITE (Berkeley)";
  72. #endif /* not lint */
  73.  
  74. #include <sprite.h>
  75. #include <stdio.h>
  76. #include <net.h>
  77.  
  78.  
  79. /*
  80.  *----------------------------------------------------------------------
  81.  *
  82.  * Net_AddrToString --
  83.  *
  84.  *    Converts a Net_Address into a printable string.
  85.  *
  86.  * Results:
  87.  *    Pointer to the string.
  88.  *
  89.  * Side effects:
  90.  *    None.
  91.  *
  92.  *----------------------------------------------------------------------
  93.  */
  94.  
  95. char    *
  96. Net_AddrToString(netAddressPtr, buffer)
  97.     Net_Address        *netAddressPtr;    /* Network address. */
  98.     char        *buffer;    /* The string buffer. */
  99. {
  100.     ReturnStatus status = SUCCESS;
  101.     *buffer = '\0';
  102.     switch(netAddressPtr->type) {
  103.     case NET_ADDRESS_ETHER: {
  104.         Net_EtherAddress    etherAddress;
  105.         status = Net_GetAddress(netAddressPtr, (Address) ðerAddress);
  106.         if (status != SUCCESS) {
  107.         break;
  108.         }
  109.         buffer = Net_EtherAddrToString(ðerAddress, buffer);
  110.         break;
  111.     }
  112.     case NET_ADDRESS_ULTRA: {
  113.         Net_UltraAddress    ultraAddress;
  114.         status = Net_GetAddress(netAddressPtr, (Address) &ultraAddress);
  115.         if (status != SUCCESS) {
  116.         break;
  117.         }
  118.         buffer = Net_UltraAddrToString(&ultraAddress, buffer);
  119.         break;
  120.     }
  121.     case NET_ADDRESS_FDDI: {
  122.         Net_FDDIAddress    fddiAddress;
  123.         status = Net_GetAddress(netAddressPtr, (Address) &fddiAddress);
  124.         if (status != SUCCESS) {
  125.         break;
  126.         }
  127.         buffer = Net_FDDIAddrToString(&fddiAddress, buffer);
  128.         break;
  129.     }
  130.     case NET_ADDRESS_INET: {
  131.         Net_InetAddress    inetAddress;
  132.         status = Net_GetAddress(netAddressPtr, (Address) &inetAddress);
  133.         if (status != SUCCESS) {
  134.         break;
  135.         }
  136.         buffer = Net_InetAddrToString(inetAddress, buffer);
  137.         break;
  138.     }
  139.     }
  140.     if (status != SUCCESS) {
  141. #ifdef KERNEL
  142.     return (char*) NIL;
  143. #else
  144.     return NULL;
  145. #endif
  146.     }
  147.     return buffer;
  148. }
  149.  
  150. @
  151.  
  152.  
  153. 1.5
  154. log
  155. @changed the FDDI address to use Net_FDDIAddrToString() instead of
  156. Net_EtherAddrToString()
  157. @
  158. text
  159. @d17 1
  160. a17 1
  161. static char rcsid[] = "$Header: /sprite/src/lib/net/RCS/Net_AddrToString.c,v 1.4 92/03/27 14:28:32 jhh Exp Locker: voelker $ SPRITE (Berkeley)";
  162. a23 3
  163. #ifdef NEW_NET
  164. #undef Net_AddrToString
  165.  
  166. d28 1
  167. a28 1
  168.  * Net_AddrToStringNew --
  169. d42 1
  170. a42 1
  171. Net_AddrToStringNew(netAddressPtr, buffer)
  172. a95 59
  173. #else /* NEW_NET */
  174. #define Net_AddressOld Net_Address
  175. #endif /* NEW_NET */
  176.  
  177. /*
  178.  *----------------------------------------------------------------------
  179.  *
  180.  * Net_AddrToString --
  181.  *
  182.  *    Converts a Net_Address into a printable string.
  183.  *
  184.  * Results:
  185.  *    Pointer to the string.
  186.  *
  187.  * Side effects:
  188.  *    None.
  189.  *
  190.  *----------------------------------------------------------------------
  191.  */
  192.  
  193. char    *
  194. Net_AddrToString(netAddressPtr, protocol, netType, buffer)
  195.     Net_AddressOld    *netAddressPtr;    /* Network address. */
  196.     int            protocol;    /* Network protocol (eg raw, inet). */
  197.     Net_NetworkType    netType;    /* Type of network (eg ether). */
  198.     char        *buffer;    /* The string buffer. */
  199. {
  200.     *buffer = '\0';
  201.     switch(protocol) {
  202.     case NET_PROTO_RAW: {
  203.         switch(netType) {
  204.         case NET_NETWORK_ETHER:
  205.             return Net_EtherAddrToString(&netAddressPtr->ether, buffer);
  206.             break;
  207.         case NET_NETWORK_ULTRA: {
  208.             int        group;
  209.             int        unit;
  210.             Net_UltraAddressGet(&netAddressPtr->ultra, &group, &unit);
  211.             sprintf(buffer, "%d/%d", group, unit);
  212.             break;
  213.         }
  214.         case NET_NETWORK_FDDI:
  215.             return Net_FDDIAddrToString(&netAddressPtr->fddi, buffer);
  216.             break;
  217.         default:
  218.             return buffer;
  219.         }
  220.         break;
  221.     }
  222.     case NET_PROTO_INET: {
  223.         return Net_InetAddrToString(netAddressPtr->inet, buffer);
  224.         break;
  225.     }
  226.     default:
  227.         return buffer;
  228.         break;
  229.     }
  230.     return buffer;
  231. }
  232. @
  233.  
  234.  
  235. 1.4
  236. log
  237. @added Net_AddrToStringNew() to work with the new net module
  238. @
  239. text
  240. @d17 1
  241. a17 1
  242. static char rcsid[] = "$Header: /sprite/src/lib/net/RCS/Net_AddrToString.c,v 1.3 92/03/02 17:45:35 voelker Exp Locker: jhh $ SPRITE (Berkeley)";
  243. d141 1
  244. a141 1
  245.             return Net_EtherAddrToString(&netAddressPtr->fddi, buffer);
  246. @
  247.  
  248.  
  249. 1.3
  250. log
  251. @added fddi (checked in by jhh)
  252. @
  253. text
  254. @d17 1
  255. a17 1
  256. static char rcsid[] = "$Header: /sprite/src/lib/net/RCS/Net_AddrToString.c,v 1.2 90/09/11 14:43:47 kupfer Exp Locker: voelker $ SPRITE (Berkeley)";
  257. d23 4
  258. d31 75
  259. d121 1
  260. a121 1
  261.     Net_Address        *netAddressPtr;    /* Network address. */
  262. a157 1
  263.  
  264. @
  265.  
  266.  
  267. 1.2
  268. log
  269. @Lint.
  270. @
  271. text
  272. @d17 1
  273. a17 1
  274. static char rcsid[] = "$Header: /sprite/src/lib/net/RCS/Net_AddrToString.c,v 1.1 90/09/05 16:49:29 kupfer Exp Locker: kupfer $ SPRITE (Berkeley)";
  275. d61 3
  276. @
  277.  
  278.  
  279. 1.2.1.1
  280. log
  281. @Initial branch for Sprite server.
  282. @
  283. text
  284. @d17 1
  285. a17 1
  286. static char rcsid[] = "$Header: /sprite/src/lib/net/RCS/Net_AddrToString.c,v 1.2 90/09/11 14:43:47 kupfer Exp $ SPRITE (Berkeley)";
  287. @
  288.  
  289.  
  290. 1.1
  291. log
  292. @Checked in for John H. (?)
  293. @
  294. text
  295. @d17 1
  296. a17 1
  297. static char rcsid[] = "$Header: /sprite/lib/forms/RCS/proto.c,v 1.3 90/01/12 12:03:36 douglis Exp $ SPRITE (Berkeley)";
  298. d21 1
  299. @
  300.